Graphical user interfaces (“GUI”) provide a user with a visual display to interact with computing resources. As the complexity and speed of software applications continues to increase, it becomes more important for GUIs to provide user-friendly displays that allow users to interact with multiple programs. Existing GUIs allow users to open multiple applications at a time. However, the user must position each application on the GUI in order to create a desired layout. The user must also resize each application individually. If a user wishes to add an additional application to the display, the user must again resize the applications in order for all applications to be viewed simultaneously.
Additionally, in existing systems, the applications running on a computer system may have limited means to communicate with each other. Each application may have a specific purpose, and although one application may contain data which would be useful to another application, it may require additional software or changes to the programming of the applications for the applications to share the data, or the user may be required to manually obtain data from one application and input the data into another application.